package featurescomparison.workingwithpresentations.converttohtml.java;
import java.util.Iterator;
import java.util.Map;
import org.docx4j.openpackaging.packages.PresentationMLPackage;
import org.docx4j.openpackaging.parts.Part;
import org.docx4j.openpackaging.parts.PresentationML.SlidePart;
import org.pptx4j.convert.out.svginhtml.SvgExporter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Pptx4jConvertToHTML
{
protected static Logger log = LoggerFactory.getLogger(Pptx4jConvertToHTML.class);
public static void main(String[] args) throws Exception
{
String dataPath = "src/featurescomparison/workingwithpresentations/converttohtml/data/";
String inputfilepath = dataPath + "pptx-basic.xml";
// Where to save images
SvgExporter.setImageDirPath(dataPath);
PresentationMLPackage presentationMLPackage =
(PresentationMLPackage)PresentationMLPackage.load(new java.io.File(inputfilepath));
// TODO - render slides in document order!
Iterator partIterator = presentationMLPackage.getParts().getParts().entrySet().iterator();
while (partIterator.hasNext()) {
Map.Entry pairs = (Map.Entry)partIterator.next();
Part p = (Part)pairs.getValue();
if (p instanceof SlidePart) {
System.out.println(
SvgExporter.svg(presentationMLPackage, (SlidePart)p)
);
}
}
// NB: file suffix must end with .xhtml in order to see the SVG in a browser
System.out.println("Done...");
}
}